package com.diaohaiwen.basic.account.obj.model.table;

import com.mybatisflex.core.query.QueryColumn;
import com.mybatisflex.core.table.TableDef;

/**
 * 系统账户登录日志 表定义层。
 *
 * @author 刁海文
 * @since 2023-07-20 19:06:16
 */
public class AccountLoginLogDef extends TableDef {

    /**
     * 系统账户登录日志
     */
    public static final AccountLoginLogDef accountLoginLog = new AccountLoginLogDef();

    /**
     * 主键ID
     */
    public final QueryColumn id = new QueryColumn(this, "id");

    /**
     * 备注
     */
    public final QueryColumn remark = new QueryColumn(this, "remark");

    /**
     * 成功失败
     */
    public final QueryColumn status = new QueryColumn(this, "status");

    /**
     * 用户主键ID
     */
    public final QueryColumn userId = new QueryColumn(this, "user_id");

    /**
     * 登录用浏览器
     */
    public final QueryColumn browser = new QueryColumn(this, "browser");

    /**
     * 创建时间/登录时间
     */
    public final QueryColumn created = new QueryColumn(this, "created");

    /**
     * 登录IP地址
     */
    public final QueryColumn loginIp = new QueryColumn(this, "login_ip");

    /**
     * 用户名称
     */
    public final QueryColumn userName = new QueryColumn(this, "user_name");

    /**
     * 用户类型，集团、4S店
     */
    public final QueryColumn userType = new QueryColumn(this, "user_type");

    /**
     * 登录方式、短信、账号密码
     */
    public final QueryColumn loginMode = new QueryColumn(this, "login_mode");

    /**
     * 所有字段。
     */
    public final QueryColumn allColumns = new QueryColumn(this, "*");

    /**
     * 默认字段，不包含逻辑删除或者 large 等字段。
     */
    public final QueryColumn[] defaultColumns = new QueryColumn[]{id, created, userId, userType, userName, browser, loginIp, loginMode, status, remark};

    public AccountLoginLogDef() {
        super("", "account_login_log");
    }

}
